[INFO] cloning repository https://github.com/morning-start/skills
[INFO] running `Command { std: "git" "-c" "credential.helper=" "-c" "credential.helper=/workspace/cargo-home/bin/git-credential-null" "clone" "--bare" "https://github.com/morning-start/skills" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmorning-start%2Fskills", kill_on_drop: false }`
[INFO] [stderr] Cloning into bare repository '/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmorning-start%2Fskills'...
[INFO] running `Command { std: "git" "rev-parse" "HEAD", kill_on_drop: false }`
[INFO] [stdout] a343b3f298a98056ce82596fc493a303a14708a7
[INFO] testing morning-start/skills against master#cced03bfd61a304243a34504618ecec86c17063f for pr-154065-2
[INFO] running `Command { std: "git" "clone" "/workspace/cache/git-repos/https%3A%2F%2Fgithub.com%2Fmorning-start%2Fskills" "/workspace/builds/worker-6-tc1/source", kill_on_drop: false }`
[INFO] [stderr] Cloning into '/workspace/builds/worker-6-tc1/source'...
[INFO] [stderr] done.
[INFO] started tweaking git repo https://github.com/morning-start/skills
[INFO] finished tweaking git repo https://github.com/morning-start/skills
[INFO] tweaked toml for git repo https://github.com/morning-start/skills written to /workspace/builds/worker-6-tc1/source/Cargo.toml
[INFO] validating manifest of git repo https://github.com/morning-start/skills on toolchain cced03bfd61a304243a34504618ecec86c17063f
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "metadata" "--manifest-path" "Cargo.toml" "--no-deps", kill_on_drop: false }`
[INFO] crate git repo https://github.com/morning-start/skills already has a lockfile, it will not be regenerated
[INFO] running `Command { std: CARGO_HOME="/workspace/cargo-home" RUSTUP_HOME="/workspace/rustup-home" "/workspace/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "fetch" "--manifest-path" "Cargo.toml", kill_on_drop: false }`
[INFO] [stderr]     Updating crates.io index
[INFO] [stderr]  Downloading crates ...
[INFO] [stderr]   Downloaded wasm-bindgen v0.2.118
[INFO] [stderr]   Downloaded lru v0.12.5
[INFO] [stderr]   Downloaded wasm-bindgen-shared v0.2.118
[INFO] [stderr]   Downloaded wasm-bindgen-macro v0.2.118
[INFO] [stderr]   Downloaded dialoguer v0.11.0
[INFO] [stderr]   Downloaded wasm-bindgen-macro-support v0.2.118
[INFO] [stderr]   Downloaded clap_complete v4.6.2
[INFO] [stderr]   Downloaded openssl-sys v0.9.114
[INFO] [stderr]   Downloaded cc v1.2.60
[INFO] [stderr]   Downloaded hashbrown v0.17.0
[INFO] [stderr]   Downloaded js-sys v0.3.95
[INFO] [stderr]   Downloaded git2 v0.20.4
[INFO] [stderr]   Downloaded libssh2-sys v0.3.1
[INFO] [stderr]   Downloaded tokio v1.52.1
[INFO] [stderr]   Downloaded libgit2-sys v0.18.3+1.9.2
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "metadata" "--no-deps" "--format-version=1", kill_on_drop: false }`
[INFO] [stdout] 4fcd4a3afb4bdea410153a3f7c83e9646bf694286ad2dcb9b4a45b96ed93f88b
[INFO] running `Command { std: "docker" "start" "-a" "4fcd4a3afb4bdea410153a3f7c83e9646bf694286ad2dcb9b4a45b96ed93f88b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "inspect" "4fcd4a3afb4bdea410153a3f7c83e9646bf694286ad2dcb9b4a45b96ed93f88b", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4fcd4a3afb4bdea410153a3f7c83e9646bf694286ad2dcb9b4a45b96ed93f88b", kill_on_drop: false }`
[INFO] [stdout] 4fcd4a3afb4bdea410153a3f7c83e9646bf694286ad2dcb9b4a45b96ed93f88b
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "build" "--frozen" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4e860d06eeb56e2f53cace01cf6b52d09d0d1acfaad6dca52a3116100e7cf10d
[INFO] running `Command { std: "docker" "start" "-a" "4e860d06eeb56e2f53cace01cf6b52d09d0d1acfaad6dca52a3116100e7cf10d", kill_on_drop: false }`
[INFO] [stderr]    Compiling unicode-ident v1.0.24
[INFO] [stderr]    Compiling libc v0.2.186
[INFO] [stderr]    Compiling pkg-config v0.3.33
[INFO] [stderr]    Compiling serde_core v1.0.228
[INFO] [stderr]    Compiling serde v1.0.228
[INFO] [stderr]    Compiling memchr v2.8.0
[INFO] [stderr]    Compiling proc-macro2-diagnostics v0.10.1
[INFO] [stderr]    Compiling hashbrown v0.17.0
[INFO] [stderr]    Compiling bitflags v2.11.1
[INFO] [stderr]    Compiling anstyle-query v1.1.5
[INFO] [stderr]    Compiling anstyle v1.0.14
[INFO] [stderr]    Compiling rustix v1.1.4
[INFO] [stderr]    Compiling colorchoice v1.0.5
[INFO] [stderr]    Compiling is_terminal_polyfill v1.70.2
[INFO] [stderr]    Compiling yansi v1.0.1
[INFO] [stderr]    Compiling regex-syntax v0.8.10
[INFO] [stderr]    Compiling num-traits v0.2.19
[INFO] [stderr]    Compiling proc-macro2 v1.0.106
[INFO] [stderr]    Compiling uncased v0.9.10
[INFO] [stderr]    Compiling unicode-width v0.2.2
[INFO] [stderr]    Compiling clap_lex v1.1.0
[INFO] [stderr]    Compiling strsim v0.11.1
[INFO] [stderr]    Compiling heck v0.5.0
[INFO] [stderr]    Compiling toml_write v0.1.2
[INFO] [stderr]    Compiling winnow v0.7.15
[INFO] [stderr]    Compiling linux-raw-sys v0.12.1
[INFO] [stderr]    Compiling figment v0.10.19
[INFO] [stderr]    Compiling anstream v1.0.0
[INFO] [stderr]    Compiling serde_json v1.0.149
[INFO] [stderr]    Compiling fastrand v2.4.1
[INFO] [stderr]    Compiling inlinable_string v0.1.15
[INFO] [stderr]    Compiling sharded-slab v0.1.7
[INFO] [stderr]    Compiling hashbrown v0.15.5
[INFO] [stderr]    Compiling number_prefix v0.4.0
[INFO] [stderr]    Compiling shell-words v1.1.1
[INFO] [stderr]    Compiling clap_builder v4.6.0
[INFO] [stderr]    Compiling openssl-probe v0.1.6
[INFO] [stderr]    Compiling iana-time-zone v0.1.65
[INFO] [stderr]    Compiling colored v3.1.1
[INFO] [stderr]    Compiling indexmap v2.14.0
[INFO] [stderr]    Compiling quote v1.0.45
[INFO] [stderr]    Compiling aho-corasick v1.1.4
[INFO] [stderr]    Compiling lru v0.12.5
[INFO] [stderr]    Compiling syn v2.0.117
[INFO] [stderr]    Compiling jobserver v0.1.34
[INFO] [stderr]    Compiling console v0.15.11
[INFO] [stderr]    Compiling getrandom v0.4.2
[INFO] [stderr]    Compiling dirs-sys v0.5.0
[INFO] [stderr]    Compiling regex-automata v0.4.14
[INFO] [stderr]    Compiling cc v1.2.60
[INFO] [stderr]    Compiling dirs v6.0.0
[INFO] [stderr]    Compiling tempfile v3.27.0
[INFO] [stderr]    Compiling indicatif v0.17.11
[INFO] [stderr]    Compiling libz-sys v1.1.28
[INFO] [stderr]    Compiling openssl-sys v0.9.114
[INFO] [stderr]    Compiling libssh2-sys v0.3.1
[INFO] [stderr]    Compiling libgit2-sys v0.18.3+1.9.2
[INFO] [stderr]    Compiling matchers v0.2.0
[INFO] [stderr]    Compiling regex v1.12.3
[INFO] [stderr]    Compiling synstructure v0.13.2
[INFO] [stderr]    Compiling zerofrom-derive v0.1.7
[INFO] [stderr]    Compiling yoke-derive v0.8.2
[INFO] [stderr]    Compiling zerovec-derive v0.11.3
[INFO] [stderr]    Compiling displaydoc v0.2.5
[INFO] [stderr]    Compiling serde_derive v1.0.228
[INFO] [stderr]    Compiling clap_derive v4.6.1
[INFO] [stderr]    Compiling tracing-attributes v0.1.31
[INFO] [stderr]    Compiling pear_codegen v0.2.9
[INFO] [stderr]    Compiling thiserror-impl v1.0.69
[INFO] [stderr]    Compiling thiserror-impl v2.0.18
[INFO] [stderr]    Compiling pear v0.2.9
[INFO] [stderr]    Compiling thiserror v1.0.69
[INFO] [stderr]    Compiling tracing v0.1.44
[INFO] [stderr]    Compiling dialoguer v0.11.0
[INFO] [stderr]    Compiling zerofrom v0.1.7
[INFO] [stderr]    Compiling yoke v0.8.2
[INFO] [stderr]    Compiling tracing-subscriber v0.3.23
[INFO] [stderr]    Compiling thiserror v2.0.18
[INFO] [stderr]    Compiling zerovec v0.11.6
[INFO] [stderr]    Compiling zerotrie v0.2.4
[INFO] [stderr]    Compiling clap v4.6.1
[INFO] [stderr]    Compiling clap_complete v4.6.2
[INFO] [stderr]    Compiling tinystr v0.8.3
[INFO] [stderr]    Compiling potential_utf v0.1.5
[INFO] [stderr]    Compiling icu_collections v2.2.0
[INFO] [stderr]    Compiling icu_locale_core v2.2.0
[INFO] [stderr]    Compiling serde_spanned v0.6.9
[INFO] [stderr]    Compiling toml_datetime v0.6.11
[INFO] [stderr]    Compiling chrono v0.4.44
[INFO] [stderr]    Compiling serde_yaml v0.9.34+deprecated
[INFO] [stderr]    Compiling icu_provider v2.2.0
[INFO] [stderr]    Compiling toml_edit v0.22.27
[INFO] [stderr]    Compiling icu_normalizer v2.2.0
[INFO] [stderr]    Compiling icu_properties v2.2.0
[INFO] [stderr]    Compiling idna_adapter v1.2.1
[INFO] [stderr]    Compiling idna v1.1.0
[INFO] [stderr]    Compiling url v2.5.8
[INFO] [stderr]    Compiling toml v0.8.23
[INFO] [stderr]    Compiling git2 v0.20.4
[INFO] [stderr]    Compiling skills v1.0.5 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `dev` profile [unoptimized + debuginfo] target(s) in 1m 17s
[INFO] running `Command { std: "docker" "inspect" "4e860d06eeb56e2f53cace01cf6b52d09d0d1acfaad6dca52a3116100e7cf10d", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4e860d06eeb56e2f53cace01cf6b52d09d0d1acfaad6dca52a3116100e7cf10d", kill_on_drop: false }`
[INFO] [stdout] 4e860d06eeb56e2f53cace01cf6b52d09d0d1acfaad6dca52a3116100e7cf10d
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "test" "--frozen" "--no-run" "--message-format=json", kill_on_drop: false }`
[INFO] [stdout] 4f94a449d9c986c6eb6b5acbd1ce8cf36ef29b05634612efda83771976d26f4f
[INFO] running `Command { std: "docker" "start" "-a" "4f94a449d9c986c6eb6b5acbd1ce8cf36ef29b05634612efda83771976d26f4f", kill_on_drop: false }`
[INFO] [stderr]    Compiling parking_lot_core v0.9.12
[INFO] [stderr]    Compiling futures-core v0.3.32
[INFO] [stderr]    Compiling slab v0.4.12
[INFO] [stderr]    Compiling errno v0.3.14
[INFO] [stderr]    Compiling sdd v3.0.10
[INFO] [stderr]    Compiling serial_test_derive v3.4.0
[INFO] [stderr]    Compiling tokio-macros v2.7.0
[INFO] [stderr]    Compiling mio v1.2.0
[INFO] [stderr]    Compiling socket2 v0.6.3
[INFO] [stderr]    Compiling futures-util v0.3.32
[INFO] [stderr]    Compiling signal-hook-registry v1.4.8
[INFO] [stderr]    Compiling scc v2.4.0
[INFO] [stderr]    Compiling parking_lot v0.12.5
[INFO] [stderr]    Compiling tokio v1.52.1
[INFO] [stderr]    Compiling futures-executor v0.3.32
[INFO] [stderr]    Compiling serial_test v3.4.0
[INFO] [stderr]    Compiling skills v1.0.5 (/opt/rustwide/workdir)
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 19.58s
[INFO] running `Command { std: "docker" "inspect" "4f94a449d9c986c6eb6b5acbd1ce8cf36ef29b05634612efda83771976d26f4f", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "4f94a449d9c986c6eb6b5acbd1ce8cf36ef29b05634612efda83771976d26f4f", kill_on_drop: false }`
[INFO] [stdout] 4f94a449d9c986c6eb6b5acbd1ce8cf36ef29b05634612efda83771976d26f4f
[INFO] running `Command { std: "docker" "create" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/target:/opt/rustwide/target:rw,Z" "-v" "/var/lib/crater-agent-workspace/builds/worker-6-tc1/source:/opt/rustwide/workdir:ro,Z" "-v" "/var/lib/crater-agent-workspace/cargo-home:/opt/rustwide/cargo-home:ro,Z" "-v" "/var/lib/crater-agent-workspace/rustup-home:/opt/rustwide/rustup-home:ro,Z" "-e" "SOURCE_DIR=/opt/rustwide/workdir" "-e" "CARGO_TARGET_DIR=/opt/rustwide/target" "-e" "CARGO_INCREMENTAL=0" "-e" "RUST_BACKTRACE=full" "-e" "RUSTFLAGS=--cap-lints=forbid" "-e" "RUSTDOCFLAGS=--cap-lints=forbid" "-e" "CARGO_HOME=/opt/rustwide/cargo-home" "-e" "RUSTUP_HOME=/opt/rustwide/rustup-home" "-w" "/opt/rustwide/workdir" "-m" "1610612736" "--user" "0:0" "--network" "none" "ghcr.io/rust-lang/crates-build-env/linux@sha256:d429b63d4308055ea97f60fb1d3dfca48854a00942f1bd2ad806beaf015945ec" "/opt/rustwide/cargo-home/bin/cargo" "+cced03bfd61a304243a34504618ecec86c17063f" "test" "--frozen", kill_on_drop: false }`
[INFO] [stdout] 8a2ec57d45bdd2b1ca238c75e518402a9594deb7af3dd69263bd98a00afe8ec2
[INFO] running `Command { std: "docker" "start" "-a" "8a2ec57d45bdd2b1ca238c75e518402a9594deb7af3dd69263bd98a00afe8ec2", kill_on_drop: false }`
[INFO] [stderr]     Finished `test` profile [unoptimized + debuginfo] target(s) in 0.26s
[INFO] [stderr]      Running unittests src/lib.rs (/opt/rustwide/target/debug/deps/skills-72185729440209fe)
[INFO] [stdout] 
[INFO] [stdout] running 214 tests
[INFO] [stdout] test models::agent::tests::test_agents_config_default_action_is_add ... ok
[INFO] [stdout] test models::agent::tests::test_custom_agent_no_display_name ... ok
[INFO] [stdout] test models::agent::tests::test_custom_agent_from_config ... ok
[INFO] [stdout] test models::agent::tests::test_agents_config_disable ... ok
[INFO] [stdout] test models::agent::tests::test_all_agents_custom_append ... ok
[INFO] [stdout] test models::agent::tests::test_builtin_agents_have_valid_paths ... ok
[INFO] [stdout] test models::agent::tests::test_find_agent_nonexistent ... ok
[INFO] [stdout] test models::agent::tests::test_agents_config_override_display_name ... ok
[INFO] [stdout] test models::agent::tests::test_all_agents_with_canonical_path_default_unchanged ... ok
[INFO] [stdout] test models::agent::tests::test_agents_config_override ... ok
[INFO] [stdout] test models::agent::tests::test_agents_config_combined ... ok
[INFO] [stdout] test models::agent::tests::test_builtin_agents_unique_names ... ok
[INFO] [stdout] test models::agent::tests::test_all_agents_custom_override ... ok
[INFO] [stdout] test models::agent::tests::test_agents_config_disable_nonexistent ... ok
[INFO] [stdout] test models::agent::tests::test_agents_config_add ... ok
[INFO] [stdout] test models::agent::tests::test_builtin_agents_count ... ok
[INFO] [stdout] test models::agent::tests::test_find_agent_with_canonical_path ... ok
[INFO] [stdout] test models::error::tests::test_agent_error_custom_not_found ... ok
[INFO] [stdout] test models::error::tests::test_agent_error_already_exists ... ok
[INFO] [stdout] test models::error::tests::test_agent_error_unsupported ... ok
[INFO] [stdout] test models::error::tests::test_app_error_config_invalid_value ... ok
[INFO] [stdout] test models::error::tests::test_agent_error_not_detected ... ok
[INFO] [stdout] test models::error::tests::test_app_error_from_io ... ok
[INFO] [stdout] test models::error::tests::test_app_error_skill_not_found ... ok
[INFO] [stdout] test models::error::tests::test_app_error_no_skill_found ... ok
[INFO] [stdout] test models::agent::tests::test_get_skills_dir_global_scope ... ok
[INFO] [stdout] test models::error::tests::test_config_error_invalid_value ... ok
[INFO] [stdout] test models::error::tests::test_config_error_parse_error ... ok
[INFO] [stdout] test models::error::tests::test_config_error_unknown_key ... ok
[INFO] [stdout] test models::error::tests::test_git_error_operation_failed ... ok
[INFO] [stdout] test models::error::tests::test_git_error_head_unavailable ... ok
[INFO] [stdout] test models::error::tests::test_git_error_remote_head_unavailable ... ok
[INFO] [stdout] test models::error::tests::test_skill_error_none_found ... ok
[INFO] [stdout] test models::error::tests::test_security_error_scan_failed ... ok
[INFO] [stdout] test models::error::tests::test_repo_error_local_path_not_found ... ok
[INFO] [stdout] test models::error::tests::test_lock_error_operation_failed ... ok
[INFO] [stdout] test models::agent::tests::test_get_skills_dir_project_scope ... ok
[INFO] [stdout] test models::error::tests::test_source_error_unsupported ... ok
[INFO] [stdout] test models::migrate::tests::test_load_v1_lock_file ... ok
[INFO] [stdout] test models::migrate::tests::test_load_v2_lock_file ... ok
[INFO] [stdout] test models::migrate::tests::test_reject_future_version ... ok
[INFO] [stdout] test services::agent::tests::test_all_agents_custom_append ... ok
[INFO] [stdout] test services::agent::tests::test_all_agents_custom_override ... ok
[INFO] [stdout] test services::agent::tests::test_builtin_agents_count ... ok
[INFO] [stdout] test services::agent::tests::test_custom_agent_from_config ... ok
[INFO] [stdout] test services::agent::tests::test_custom_agent_no_display_name ... ok
[INFO] [stdout] test services::agent::tests::test_find_agent_existing ... ok
[INFO] [stdout] test services::agent::tests::test_find_agent_nonexistent ... ok
[INFO] [stdout] test models::error::tests::test_repo_error_not_found ... ok
[INFO] [stdout] test models::error::tests::test_skill_error_not_found ... ok
[INFO] [stdout] test services::agent::tests::test_get_skills_dir_global_scope ... ok
[INFO] [stdout] test models::error::tests::test_sub_error_display_format ... ok
[INFO] [stdout] test models::migrate::tests::test_migrate_multiple_v1_entries ... ok
[INFO] [stdout] test models::error::tests::test_skill_error_install_failed ... ok
[INFO] [stdout] test models::error::tests::test_lock_error_corrupted ... ok
[INFO] [stdout] test models::error::tests::test_error_display_contains_code ... ok
[INFO] [stdout] test models::error::tests::test_skill_error_remove_failed ... ok
[INFO] [stdout] test services::agent::tests::test_resolve_agents_no_default_returns_all ... ok
[INFO] [stdout] test services::agent::tests::test_get_skills_dir_project_scope ... ok
[INFO] [stdout] test services::agent::tests::test_resolve_agents_with_explicit_names ... ok
[INFO] [stdout] test services::agent_config::tests::test_add_custom_agent_no_duplicate ... ok
[INFO] [stdout] test services::agent_config::tests::test_remove_custom_agent_retain ... ok
[INFO] [stdout] test services::config::service::tests::test_cache_dir_or_default_with_custom ... ok
[INFO] [stdout] test services::config::service::tests::test_config_validate_valid ... ok
[INFO] [stdout] test services::config::service::tests::test_add_custom_agent_duplicate_prevented ... ok
[INFO] [stdout] test services::config::service::tests::test_config_validate_invalid_language ... ok
[INFO] [stdout] test services::config::service::tests::test_config_parse_empty_toml ... ok
[INFO] [stdout] test services::config::service::tests::test_cache_dir_or_default_default ... ok
[INFO] [stdout] test services::config::service::tests::test_config_toml_roundtrip ... ok
[INFO] [stdout] test services::config::service::tests::test_config_validate_empty_cache_dir ... ok
[INFO] [stdout] test services::agent::tests::test_resolve_agents_unsupported_name ... ok
[INFO] [stdout] test services::agent::tests::test_resolve_agents_with_default_config ... ok
[INFO] [stdout] test services::config::service::tests::test_default_config ... ok
[INFO] [stdout] test services::agent_config::tests::test_list_custom_agents_empty ... ok
[INFO] [stdout] test services::config::service::tests::test_config_with_custom_agents_roundtrip ... ok
[INFO] [stdout] test services::config::service::tests::test_config_validate_valid_language_en ... ok
[INFO] [stdout] test services::config::service::tests::test_config_validate_empty_agent_name ... ok
[INFO] [stdout] test services::config::service::tests::test_figment_merge_upper_overrides ... ok
[INFO] [stdout] test services::config_manager::tests::test_config_manager_canonical_path_default ... ok
[INFO] [stdout] test services::config::service::tests::test_config_validate_valid_language_zh ... ok
[INFO] [stdout] test services::config_manager::tests::test_config_manager_canonical_path_custom ... ok
[INFO] [stdout] test services::config_manager::tests::test_config_manager_paths ... ok
[INFO] [stdout] test services::config_manager::tests::test_config_overrides_default ... ok
[INFO] [stdout] test services::git::tests::test_git_service_new ... ok
[INFO] [stdout] test services::git::tests::test_git_state_is_complete ... ok
[INFO] [stdout] test services::git::tests::test_cache_path_for_url ... ok
[INFO] [stdout] test services::git::tests::test_cache_path_for_url_git_ssh ... ok
[INFO] [stdout] test services::git::tests::test_git_state_is_offline ... ok
[INFO] [stdout] test services::git::tests::test_git_state_needs_clone ... ok
[INFO] [stdout] test services::git::tests::test_git_state_needs_pull ... ok
[INFO] [stdout] test services::git::tests::test_git_state_path_and_commit ... ok
[INFO] [stdout] test services::config::service::tests::test_remove_custom_agent ... ok
[INFO] [stdout] test services::git::tests::test_git_state_transition_cached_to_needs_update ... ok
[INFO] [stdout] test services::config::service::tests::test_figment_merge_base_fallback ... ok
[INFO] [stdout] test services::config::service::tests::test_set_valid_keys ... ok
[INFO] [stdout] test services::git::tests::test_git_state_transition_cached_to_offline ... ok
[INFO] [stdout] test services::git::tests::test_git_state_transition_needs_update_to_up_to_date ... ok
[INFO] [stdout] test services::git::tests::test_git_state_transition_no_cache_to_cached ... ok
[INFO] [stdout] test services::config::service::tests::test_figment_env_override ... ok
[INFO] [stdout] test services::git::tests::test_git_state_transition_no_cache_to_no_cache ... ok
[INFO] [stdout] test services::git::tests::test_git_state_transition_to_error ... ok
[INFO] [stdout] test services::git::tests::test_parse_repo_url_git_ssh_without_suffix ... ok
[INFO] [stdout] test services::git::tests::test_parse_repo_url_gitlab ... ok
[INFO] [stdout] test services::git::tests::test_parse_repo_url_https ... ok
[INFO] [stdout] test services::git::tests::test_parse_repo_url_git_ssh ... ok
[INFO] [stdout] test services::git::tests::test_git_state_transition_no_cache_to_up_to_date ... ok
[INFO] [stdout] test services::git::tests::test_validate_sub_path ... ok
[INFO] [stdout] test services::install_strategy::tests::test_get_strategy_copy ... ok
[INFO] [stdout] test services::git::tests::test_parse_repo_url_https_with_git_suffix ... ok
[INFO] [stdout] test services::git::tests::test_update_status_equality ... ok
[INFO] [stdout] test services::install_strategy::tests::test_copy_strategy_name ... ok
[INFO] [stdout] test services::git::tests::test_validate_git_url ... ok
[INFO] [stdout] test services::git::tests::test_update_status_need_update ... ok
[INFO] [stdout] test services::git::tests::test_git_state_transition_cached_to_up_to_date ... ok
[INFO] [stdout] test services::install_strategy::tests::test_symlink_strategy_name ... ok
[INFO] [stdout] test services::lock::tests::test_merge_agents_on_duplicate_name ... ok
[INFO] [stdout] test services::config_manager::tests::test_config_manager_load ... ok
[INFO] [stdout] test services::lock::tests::test_load_empty_dir_returns_default ... ok
[INFO] [stdout] test services::scan::tests::test_builtin_rules_ids ... ok
[INFO] [stdout] test services::scan::tests::test_is_scannable_file ... ok
[INFO] [stdout] test services::install_strategy::tests::test_get_strategy_symlink ... ok
[INFO] [stdout] test services::scan::tests::test_builtin_rules_count ... ok
[INFO] [stdout] test services::lock::tests::test_lock_file_toml_format ... ok
[INFO] [stdout] test services::scan::tests::test_scan_empty_skill ... ok
[INFO] [stdout] test services::scan::tests::test_scan_report_findings_sorted ... ok
[INFO] [stdout] test services::scan::tests::test_scan_report_has_high_severity ... ok
[INFO] [stdout] test services::lock::tests::test_remove_entry_all_agents ... ok
[INFO] [stdout] test services::scan::tests::test_scan_report_no_high_severity ... ok
[INFO] [stdout] test services::lock::tests::test_save_and_load_roundtrip ... ok
[INFO] [stdout] test services::lock::tests::test_remove_partial_agents ... ok
[INFO] [stdout] test services::lock::tests::test_update_entry_commit_hash ... ok
[INFO] [stdout] test services::install_strategy::tests::test_copy_strategy_install ... ok
[INFO] [stdout] test services::lock::tests::test_save_creates_file ... ok
[INFO] [stdout] test services::lock::tests::test_update_nonexistent_entry_returns_false ... ok
[INFO] [stdout] test services::scan::tests::test_severity_ordering ... ok
[INFO] [stdout] test services::scan_rule_registry::tests::test_default_registry_has_builtin_rules ... ok
[INFO] [stdout] test services::scan_rule_registry::tests::test_dynamic_registry_with_extra_rules ... ok
[INFO] [stdout] test services::state::tests::test_app_state_new ... ok
[INFO] [stdout] test services::state::tests::test_app_state_write_config ... ok
[INFO] [stdout] test services::state::tests::test_app_stats_default ... ok
[INFO] [stdout] test services::state::tests::test_event_bus_disabled_by_default ... ok
[INFO] [stdout] test services::state::tests::test_event_bus_emit ... ok
[INFO] [stdout] test services::state::tests::test_event_bus_emit_skipped_when_disabled ... ok
[INFO] [stdout] test services::state::tests::test_event_bus_enable_disable ... ok
[INFO] [stdout] test services::scan::tests::test_severity_display ... ok
[INFO] [stdout] test services::state::tests::test_event_bus_remove_category_clears_both ... ok
[INFO] [stdout] test services::state::tests::test_event_bus_listener_count ... ok
[INFO] [stdout] test services::state::tests::test_event_bus_remove_category ... ok
[INFO] [stdout] test services::state::tests::test_record_skill_installed ... ok
[INFO] [stdout] test services::state::tests::test_record_skill_removed ... ok
[INFO] [stdout] test services::sync_strategy::tests::test_local_sync_strategy_name ... ok
[INFO] [stdout] test utils::fs::tests::test_atomic_write ... ok
[INFO] [stdout] test utils::fs::tests::test_copy_dir_recursive ... ok
[INFO] [stdout] test utils::fs::tests::test_find_file ... ok
[INFO] [stdout] test utils::fs::tests::test_safe_remove_nonexistent ... ok
[INFO] [stdout] test utils::fs::tests::test_ensure_dir ... ok
[INFO] [stdout] test utils::i18n::tests::test_all_keys_have_translations ... ok
[INFO] [stdout] test utils::i18n::tests::test_chinese_messages_loaded ... ok
[INFO] [stdout] test utils::i18n::tests::test_fmt_basic ... ok
[INFO] [stdout] test utils::i18n::tests::test_i18n_get_returns_key_for_missing ... ok
[INFO] [stdout] test utils::i18n::tests::test_normalize_lang ... ok
[INFO] [stdout] test utils::output::tests::test_output_format_from_env_default ... ok
[INFO] [stdout] test services::sync_strategy::tests::test_git_sync_strategy_name ... ok
[INFO] [stdout] test utils::output::tests::test_output_row_field ... ok
[INFO] [stdout] test utils::output::tests::test_output_row_json_serialization ... ok
[INFO] [stdout] test utils::i18n::tests::test_english_messages_loaded ... ok
[INFO] [stdout] test utils::output::tests::test_print_table_format ... ok
[INFO] [stdout] test utils::path::tests::test_ensure_trailing_sep ... ok
[INFO] [stdout] test utils::path::tests::test_file_stem ... ok
[INFO] [stdout] test utils::path::tests::test_join_path ... ok
[INFO] [stdout] test utils::path::tests::test_normalize_edge_cases ... ok
[INFO] [stdout] test utils::path::tests::test_normalize_path ... ok
[INFO] [stdout] test utils::path::tests::test_shorten_path ... ok
[INFO] [stdout] test utils::path::tests::test_to_forward_slashes ... ok
[INFO] [stdout] test utils::path::tests::test_url_to_cache_path ... ok
[INFO] [stdout] test utils::path::tests::test_url_to_cache_path_git_ssh ... ok
[INFO] [stdout] test utils::path::tests::test_url_to_cache_path_http ... ok
[INFO] [stdout] test utils::path::tests::test_ensure_trailing_sep_already_has_sep ... ok
[INFO] [stdout] test utils::path::tests::test_validate_path_component_absolute ... ok
[INFO] [stdout] test utils::path::tests::test_validate_path_component_empty ... ok
[INFO] [stdout] test utils::path::tests::test_validate_path_component_long_path ... ok
[INFO] [stdout] test models::error::tests::test_app_error_agent_not_detected ... ok
[INFO] [stdout] test utils::path::tests::test_validate_path_component_separator ... ok
[INFO] [stdout] test utils::path::tests::test_validate_path_component_unicode ... ok
[INFO] [stdout] test utils::path::tests::test_validate_path_component_valid ... ok
[INFO] [stdout] test utils::path::tests::test_validate_skill_name ... ok
[INFO] [stdout] test utils::path::tests::test_validate_skill_name_null_byte ... ok
[INFO] [stdout] test utils::skill::tests::test_find_skill_source_path_fallback ... ok
[INFO] [stdout] test utils::path::tests::test_validate_path_component_special_chars ... ok
[INFO] [stdout] test utils::skill::tests::test_find_skill_source_path_root ... ok
[INFO] [stdout] test utils::skill::tests::test_find_skill_source_path_in_skills_dir ... ok
[INFO] [stdout] test utils::url::tests::test_git_ssh_url ... ok
[INFO] [stdout] test utils::url::tests::test_github_shorthand ... ok
[INFO] [stdout] test utils::skill::tests::test_find_skill_source_path_with_sub_path ... ok
[INFO] [stdout] test utils::url::tests::test_github_subdir_url ... ok
[INFO] [stdout] test utils::url::tests::test_github_url ... ok
[INFO] [stdout] test utils::url::tests::test_gitlab_url ... ok
[INFO] [stdout] test models::agent::tests::test_agents_config_with_custom_agents_compat ... ok
[INFO] [stdout] test utils::url::tests::test_package_at_limit ... ok
[INFO] [stdout] test services::git::tests::test_parse_repo_url_http ... ok
[INFO] [stdout] test utils::url::tests::test_url_too_long ... ok
[INFO] [stdout] test utils::output::tests::test_output_row_new ... ok
[INFO] [stdout] test models::agent::tests::test_find_agent_existing ... ok
[INFO] [stdout] test utils::url::tests::test_package_too_long ... ok
[INFO] [stdout] test services::lock::tests::test_add_new_entry ... ok
[INFO] [stdout] test services::scan::tests::test_scan_skill_with_env_access ... ok
[INFO] [stdout] test utils::path::tests::test_validate_path_component_traversal ... ok
[INFO] [stdout] test services::scan::tests::test_scan_skill_with_file_delete ... ok
[INFO] [stdout] test services::scan::tests::test_scan_skill_scripts_subdir ... ok
[INFO] [stdout] test services::scan::tests::test_scan_skill_with_network_access ... ok
[INFO] [stdout] test services::scan::tests::test_scan_clean_skill ... ok
[INFO] [stdout] test services::scan::tests::test_scan_skill_with_privilege_escalation ... ok
[INFO] [stderr]      Running unittests src/main.rs (/opt/rustwide/target/debug/deps/skills-4dfe69d3f1fa7105)
[INFO] [stdout] test services::scan::tests::test_scan_content_line_numbers ... ok
[INFO] [stdout] test services::scan::tests::test_scan_skill_with_cmd_injection ... ok
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 214 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.10s
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] running 0 tests
[INFO] [stdout] 
[INFO] [stdout] test result: ok. 0 passed; 0 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.00s
[INFO] [stdout] 
[INFO] [stderr]      Running tests/integration_tests.rs (/opt/rustwide/target/debug/deps/integration_tests-f130472618c98a64)
[INFO] [stdout] 
[INFO] [stdout] running 53 tests
[INFO] [stdout] test integration::agent::test_agent_skills_dir_global ... ok
[INFO] [stdout] test integration::agent::test_agent_skills_dir_project ... ok
[INFO] [stdout] test integration::agent::test_boundary_agent_def_fields ... ok
[INFO] [stdout] test integration::config::test_config_cache_dir_default ... ok
[INFO] [stdout] test integration::config::test_config_default ... ok
[INFO] [stdout] test integration::boundary::test_boundary_discover_empty_dir ... ok
[INFO] [stdout] test integration::boundary::test_boundary_config_default_values ... ok
[INFO] [stdout] test integration::config::test_config_cache_dir_custom ... ok
[INFO] [stdout] test integration::config::test_config_merge ... ok
[INFO] [stdout] test integration::agent::test_all_agents_override_builtin ... ok
[INFO] [stdout] test integration::agent::test_builtin_agents ... ok
[INFO] [stdout] test integration::agent::test_find_agent ... ok
[INFO] [stdout] test integration::agent::test_all_agents_with_custom ... ok
[INFO] [stdout] test integration::lock::test_lock_file_remove_partial_agent_logic ... ok
[INFO] [stdout] test integration::agent::test_builtin_agents_count ... ok
[INFO] [stdout] test integration::agent::test_builtin_agents_required_fields ... ok
[INFO] [stdout] test integration::init::test_init_creates_skill_md ... ok
[INFO] [stdout] test integration::lock::test_boundary_lock_file_unicode ... ok
[INFO] [stdout] test integration::boundary::test_boundary_skill_name_with_dots ... ok
[INFO] [stdout] test integration::lock::test_lock_file_default ... ok
[INFO] [stdout] test integration::lock::test_lock_file_add_merge_logic ... ok
[INFO] [stdout] test integration::lock::test_lock_file_remove_logic ... ok
[INFO] [stdout] test integration::lock::test_lock_entry_scope_str ... ok
[INFO] [stdout] test integration::lock::test_lock_file_toml_roundtrip ... ok
[INFO] [stdout] test integration::lock::test_lock_file_update_logic ... ok
[INFO] [stdout] test integration::lock::test_lock_file_with_sub_path ... ok
[INFO] [stdout] test integration::skill::test_discover_skills ... ok
[INFO] [stdout] test integration::skill::test_parse_skill_md_no_frontmatter ... ok
[INFO] [stdout] test integration::sync::test_sync_local_skill_no_update ... ok
[INFO] [stdout] test integration::skill::test_parse_skill_md ... ok
[INFO] [stdout] test integration::sync::test_sync_lock_file_roundtrip ... ok
[INFO] [stdout] test integration::url::test_parse_git_url ... ok
[INFO] [stdout] test integration::sync::test_sync_detects_version_mismatch ... ok
[INFO] [stdout] test integration::url::test_parse_github_shorthand ... ok
[INFO] [stdout] test integration::url::test_parse_github_subdir_url_deep ... ok
[INFO] [stdout] test integration::url::test_parse_local_path ... ok
[INFO] [stdout] test integration::utils::test_can_create_symlinks_returns_boolean ... ok
[INFO] [stdout] test integration::url::test_parse_github_url ... ok
[INFO] [stdout] test integration::utils::test_install_method_parse ... ok
[INFO] [stdout] test integration::utils::test_windows_path_with_spaces ... ok
[INFO] [stdout] test integration::utils::test_symlink_or_copy_fallback ... ok
[INFO] [stdout] test integration::utils::test_find_skill_source_path_with_sub_path ... ok
[INFO] [stdout] test integration::utils::test_copy_install_creates_independent_copy ... ok
[INFO] [stdout] test integration::utils::test_safe_remove_symlink_or_directory ... ok
[INFO] [stdout] test integration::skill::test_discover_skills_in_nested_dirs ... ok
[INFO] [stdout] test integration::url::test_parse_gitlab_subdir_url ... ok
[INFO] [stdout] test integration::scan::test_scan_report_findings_sorted ... ok
[INFO] [stdout] test integration::scan::test_scan_clean_skill ... ok
[INFO] [stdout] test integration::scan::test_scan_dangerous_skill ... ok
[INFO] [stdout] test integration::lifecycle::test_add_multiple_skills_then_remove_one ... FAILED
[INFO] [stdout] test integration::lifecycle::test_update_no_change_same_hash ... FAILED
[INFO] [stdout] test integration::lifecycle::test_full_lifecycle_add_list_update_remove ... FAILED
[INFO] [stdout] test integration::sync::test_sync_installs_missing_skills ... FAILED
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout] 
[INFO] [stdout] ---- integration::lifecycle::test_add_multiple_skills_then_remove_one stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'integration::lifecycle::test_add_multiple_skills_then_remove_one' (250) panicked at tests/integration/lifecycle.rs:88:10:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: 创建目录失败: /opt/rustwide/workdir/.agents/skills/
[INFO] [stdout] 
[INFO] [stdout] Caused by:
[INFO] [stdout]     Read-only file system (os error 30)
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: <std::io::error::Error as anyhow::context::ext::StdError>::ext_context::<alloc::string::String>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/backtrace.rs:10:14
[INFO] [stdout]    1: <core::result::Result<(), std::io::error::Error> as anyhow::Context<(), std::io::error::Error>>::with_context::<alloc::string::String, skills::utils::fs::ensure_dir::{closure#0}>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/context.rs:65:37
[INFO] [stdout]    2: skills::utils::fs::ensure_dir
[INFO] [stdout]              at ./src/utils/fs.rs:159:14
[INFO] [stdout]    3: <skills::services::skill::SkillService>::install_skill_with_provider
[INFO] [stdout]              at ./src/services/skill.rs:317:9
[INFO] [stdout]    4: <skills::services::skill::SkillService>::install_skill
[INFO] [stdout]              at ./src/services/skill.rs:289:9
[INFO] [stdout]    5: integration_tests::integration::lifecycle::test_add_multiple_skills_then_remove_one::{closure#0}
[INFO] [stdout]              at ./tests/integration/lifecycle.rs:85:9
[INFO] [stdout]    6: <integration_tests::integration::lifecycle::test_add_multiple_skills_then_remove_one::{closure#0} as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]    7: serial_test::serial_code_lock::local_serial_core
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.4.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]    8: integration_tests::integration::lifecycle::test_add_multiple_skills_then_remove_one
[INFO] [stdout]              at ./tests/integration/lifecycle.rs:71:1
[INFO] [stdout]    9: integration_tests::integration::lifecycle::test_add_multiple_skills_then_remove_one::{closure#0}
[INFO] [stdout]              at ./tests/integration/lifecycle.rs:72:46
[INFO] [stdout]   10: <integration_tests::integration::lifecycle::test_add_multiple_skills_then_remove_one::{closure#0} as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   11: <fn() -> core::result::Result<(), alloc::string::String> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   12: test::__rust_begin_short_backtrace::<core::result::Result<(), alloc::string::String>, fn() -> core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:724:18
[INFO] [stdout]   13: test::run_test_in_process::{closure#0}
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:747:74
[INFO] [stdout]   14: <core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   15: std::panicking::catch_unwind::do_call::<core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>, core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   16: std::panicking::catch_unwind::<core::result::Result<(), alloc::string::String>, core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   17: std::panic::catch_unwind::<core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>, core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panic.rs:359:14
[INFO] [stdout]   18: test::run_test_in_process
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:747:27
[INFO] [stdout]   19: test::run_test::{closure#0}
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:668:43
[INFO] [stdout]   20: test::run_test::{closure#1}
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:698:41
[INFO] [stdout]   21: std::sys::backtrace::__rust_begin_short_backtrace::<test::run_test::{closure#1}, ()>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   22: std::thread::lifecycle::spawn_unchecked::<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   23: <core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   24: std::panicking::catch_unwind::do_call::<core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   25: std::panicking::catch_unwind::<(), core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   26: std::panic::catch_unwind::<core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panic.rs:359:14
[INFO] [stdout]   27: std::thread::lifecycle::spawn_unchecked::<test::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   28: <std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   29: <alloc::boxed::Box<dyn core::ops::function::FnOnce<(), Output = ()> + core::marker::Send> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/alloc/src/boxed.rs:2277:9
[INFO] [stdout]   30: <std::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   31: <unknown>
[INFO] [stdout]   32: clone
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5f19f28b0888 - std[929523f510218772]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5f19f28b0888 - std[929523f510218772]::backtrace_rs::backtrace::trace_unsynchronized::<std[929523f510218772]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5f19f28b0888 - std[929523f510218772]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5f19f28b0888 - <<std[929523f510218772]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[28b146924c2f19c6]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5f19f28c922a - <core[28b146924c2f19c6]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5f19f28c922a - core[28b146924c2f19c6]::fmt::write
[INFO] [stdout]    6:     0x5f19f28b5c12 - std[929523f510218772]::io::default_write_fmt::<alloc[95e62e727ddf147d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/io/mod.rs:622:11
[INFO] [stdout]    7:     0x5f19f28b5c12 - <alloc[95e62e727ddf147d]::vec::Vec<u8> as std[929523f510218772]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/io/mod.rs:1977:13
[INFO] [stdout]    8:     0x5f19f288b976 - <std[929523f510218772]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5f19f288b976 - std[929523f510218772]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5f19f28a6aa9 - std[929523f510218772]::panicking::default_hook
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5f19f280a57c - <alloc[95e62e727ddf147d]::boxed::Box<dyn for<'a, 'b> core[28b146924c2f19c6]::ops::function::Fn<(&'a std[929523f510218772]::panic::PanicHookInfo<'b>,), Output = ()> + core[28b146924c2f19c6]::marker::Sync + core[28b146924c2f19c6]::marker::Send> as core[28b146924c2f19c6]::ops::function::Fn<(&std[929523f510218772]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/alloc/src/boxed.rs:2291:9
[INFO] [stdout]   12:     0x5f19f280a57c - test[6ec0502068880816]::test_main_inner::<test[6ec0502068880816]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x5f19f28a6d22 - <alloc[95e62e727ddf147d]::boxed::Box<dyn for<'a, 'b> core[28b146924c2f19c6]::ops::function::Fn<(&'a std[929523f510218772]::panic::PanicHookInfo<'b>,), Output = ()> + core[28b146924c2f19c6]::marker::Sync + core[28b146924c2f19c6]::marker::Send> as core[28b146924c2f19c6]::ops::function::Fn<(&std[929523f510218772]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/alloc/src/boxed.rs:2291:9
[INFO] [stdout]   14:     0x5f19f28a6d22 - std[929523f510218772]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5f19f288ba32 - std[929523f510218772]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5f19f28801b9 - std[929523f510218772]::sys::backtrace::__rust_end_short_backtrace::<std[929523f510218772]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5f19f288caed - __rustc[acf6043c977865fb]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5f19f28c9a9c - core[28b146924c2f19c6]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5f19f28c97e2 - core[28b146924c2f19c6]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/result.rs:1872:5
[INFO] [stdout]   20:     0x5f19f1f7cab1 - <core[28b146924c2f19c6]::result::Result<std[929523f510218772]::path::PathBuf, anyhow[31cb6a6de38747ae]::Error>>::unwrap
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5f19f1f7cab1 - integration_tests[e14201d863eb1de]::integration::lifecycle::test_add_multiple_skills_then_remove_one::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/integration/lifecycle.rs:88:10
[INFO] [stdout]   22:     0x5f19f1f6da1e - <integration_tests[e14201d863eb1de]::integration::lifecycle::test_add_multiple_skills_then_remove_one::{closure#0} as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x5f19f2841a1e - serial_test[7a9513f9deec4846]::serial_code_lock::local_serial_core
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.4.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]   24:     0x5f19f1f7f744 - integration_tests[e14201d863eb1de]::integration::lifecycle::test_add_multiple_skills_then_remove_one
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/integration/lifecycle.rs:71:1
[INFO] [stdout]   25:     0x5f19f1f7b627 - integration_tests[e14201d863eb1de]::integration::lifecycle::test_add_multiple_skills_then_remove_one::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/integration/lifecycle.rs:72:46
[INFO] [stdout]   26:     0x5f19f1f6d976 - <integration_tests[e14201d863eb1de]::integration::lifecycle::test_add_multiple_skills_then_remove_one::{closure#0} as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5f19f27fd65b - <fn() -> core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String> as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x5f19f27fd65b - test[6ec0502068880816]::__rust_begin_short_backtrace::<core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>, fn() -> core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x5f19f280aed5 - test[6ec0502068880816]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x5f19f280aed5 - <core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<test[6ec0502068880816]::run_test_in_process::{closure#0}> as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x5f19f280aed5 - std[929523f510218772]::panicking::catch_unwind::do_call::<core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<test[6ec0502068880816]::run_test_in_process::{closure#0}>, core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   32:     0x5f19f280aed5 - std[929523f510218772]::panicking::catch_unwind::<core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>, core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<test[6ec0502068880816]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x5f19f280aed5 - std[929523f510218772]::panic::catch_unwind::<core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<test[6ec0502068880816]::run_test_in_process::{closure#0}>, core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x5f19f280aed5 - test[6ec0502068880816]::run_test_in_process
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x5f19f280aed5 - test[6ec0502068880816]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x5f19f2805a34 - test[6ec0502068880816]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x5f19f2805a34 - std[929523f510218772]::sys::backtrace::__rust_begin_short_backtrace::<test[6ec0502068880816]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x5f19f280df52 - std[929523f510218772]::thread::lifecycle::spawn_unchecked::<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x5f19f280df52 - <core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x5f19f280df52 - std[929523f510218772]::panicking::catch_unwind::do_call::<core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   41:     0x5f19f280df52 - std[929523f510218772]::panicking::catch_unwind::<(), core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x5f19f280df52 - std[929523f510218772]::panic::catch_unwind::<core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x5f19f280df52 - std[929523f510218772]::thread::lifecycle::spawn_unchecked::<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x5f19f280df52 - <std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1} as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x5f19f28afbef - <alloc[95e62e727ddf147d]::boxed::Box<dyn core[28b146924c2f19c6]::ops::function::FnOnce<(), Output = ()> + core[28b146924c2f19c6]::marker::Send> as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/alloc/src/boxed.rs:2277:9
[INFO] [stdout]   46:     0x5f19f28afbef - <std[929523f510218772]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   47:     0x75202524eaa4 - <unknown>
[INFO] [stdout]   48:     0x7520252dba64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- integration::lifecycle::test_update_no_change_same_hash stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'integration::lifecycle::test_update_no_change_same_hash' (252) panicked at tests/integration/lifecycle.rs:130:6:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: 创建目录失败: /opt/rustwide/workdir/.agents/skills/
[INFO] [stdout] 
[INFO] [stdout] Caused by:
[INFO] [stdout]     Read-only file system (os error 30)
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: <std::io::error::Error as anyhow::context::ext::StdError>::ext_context::<alloc::string::String>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/backtrace.rs:10:14
[INFO] [stdout]    1: <core::result::Result<(), std::io::error::Error> as anyhow::Context<(), std::io::error::Error>>::with_context::<alloc::string::String, skills::utils::fs::ensure_dir::{closure#0}>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/context.rs:65:37
[INFO] [stdout]    2: skills::utils::fs::ensure_dir
[INFO] [stdout]              at ./src/utils/fs.rs:159:14
[INFO] [stdout]    3: <skills::services::skill::SkillService>::install_skill_with_provider
[INFO] [stdout]              at ./src/services/skill.rs:317:9
[INFO] [stdout]    4: <skills::services::skill::SkillService>::install_skill
[INFO] [stdout]              at ./src/services/skill.rs:289:9
[INFO] [stdout]    5: integration_tests::integration::lifecycle::test_update_no_change_same_hash::{closure#0}
[INFO] [stdout]              at ./tests/integration/lifecycle.rs:123:5
[INFO] [stdout]    6: <integration_tests::integration::lifecycle::test_update_no_change_same_hash::{closure#0} as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]    7: serial_test::serial_code_lock::local_serial_core
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.4.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]    8: integration_tests::integration::lifecycle::test_update_no_change_same_hash
[INFO] [stdout]              at ./tests/integration/lifecycle.rs:116:1
[INFO] [stdout]    9: integration_tests::integration::lifecycle::test_update_no_change_same_hash::{closure#0}
[INFO] [stdout]              at ./tests/integration/lifecycle.rs:117:37
[INFO] [stdout]   10: <integration_tests::integration::lifecycle::test_update_no_change_same_hash::{closure#0} as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   11: <fn() -> core::result::Result<(), alloc::string::String> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   12: test::__rust_begin_short_backtrace::<core::result::Result<(), alloc::string::String>, fn() -> core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:724:18
[INFO] [stdout]   13: test::run_test_in_process::{closure#0}
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:747:74
[INFO] [stdout]   14: <core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   15: std::panicking::catch_unwind::do_call::<core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>, core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   16: std::panicking::catch_unwind::<core::result::Result<(), alloc::string::String>, core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   17: std::panic::catch_unwind::<core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>, core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panic.rs:359:14
[INFO] [stdout]   18: test::run_test_in_process
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:747:27
[INFO] [stdout]   19: test::run_test::{closure#0}
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:668:43
[INFO] [stdout]   20: test::run_test::{closure#1}
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:698:41
[INFO] [stdout]   21: std::sys::backtrace::__rust_begin_short_backtrace::<test::run_test::{closure#1}, ()>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   22: std::thread::lifecycle::spawn_unchecked::<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   23: <core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   24: std::panicking::catch_unwind::do_call::<core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   25: std::panicking::catch_unwind::<(), core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   26: std::panic::catch_unwind::<core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panic.rs:359:14
[INFO] [stdout]   27: std::thread::lifecycle::spawn_unchecked::<test::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   28: <std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   29: <alloc::boxed::Box<dyn core::ops::function::FnOnce<(), Output = ()> + core::marker::Send> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/alloc/src/boxed.rs:2277:9
[INFO] [stdout]   30: <std::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   31: <unknown>
[INFO] [stdout]   32: clone
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5f19f28b0888 - std[929523f510218772]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5f19f28b0888 - std[929523f510218772]::backtrace_rs::backtrace::trace_unsynchronized::<std[929523f510218772]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5f19f28b0888 - std[929523f510218772]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5f19f28b0888 - <<std[929523f510218772]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[28b146924c2f19c6]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5f19f28c922a - <core[28b146924c2f19c6]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5f19f28c922a - core[28b146924c2f19c6]::fmt::write
[INFO] [stdout]    6:     0x5f19f28b5c12 - std[929523f510218772]::io::default_write_fmt::<alloc[95e62e727ddf147d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/io/mod.rs:622:11
[INFO] [stdout]    7:     0x5f19f28b5c12 - <alloc[95e62e727ddf147d]::vec::Vec<u8> as std[929523f510218772]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/io/mod.rs:1977:13
[INFO] [stdout]    8:     0x5f19f288b976 - <std[929523f510218772]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5f19f288b976 - std[929523f510218772]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5f19f28a6aa9 - std[929523f510218772]::panicking::default_hook
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5f19f280a57c - <alloc[95e62e727ddf147d]::boxed::Box<dyn for<'a, 'b> core[28b146924c2f19c6]::ops::function::Fn<(&'a std[929523f510218772]::panic::PanicHookInfo<'b>,), Output = ()> + core[28b146924c2f19c6]::marker::Sync + core[28b146924c2f19c6]::marker::Send> as core[28b146924c2f19c6]::ops::function::Fn<(&std[929523f510218772]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/alloc/src/boxed.rs:2291:9
[INFO] [stdout]   12:     0x5f19f280a57c - test[6ec0502068880816]::test_main_inner::<test[6ec0502068880816]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x5f19f28a6d22 - <alloc[95e62e727ddf147d]::boxed::Box<dyn for<'a, 'b> core[28b146924c2f19c6]::ops::function::Fn<(&'a std[929523f510218772]::panic::PanicHookInfo<'b>,), Output = ()> + core[28b146924c2f19c6]::marker::Sync + core[28b146924c2f19c6]::marker::Send> as core[28b146924c2f19c6]::ops::function::Fn<(&std[929523f510218772]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/alloc/src/boxed.rs:2291:9
[INFO] [stdout]   14:     0x5f19f28a6d22 - std[929523f510218772]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5f19f288ba32 - std[929523f510218772]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5f19f28801b9 - std[929523f510218772]::sys::backtrace::__rust_end_short_backtrace::<std[929523f510218772]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5f19f288caed - __rustc[acf6043c977865fb]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5f19f28c9a9c - core[28b146924c2f19c6]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5f19f28c97e2 - core[28b146924c2f19c6]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/result.rs:1872:5
[INFO] [stdout]   20:     0x5f19f1f7b8c5 - <core[28b146924c2f19c6]::result::Result<std[929523f510218772]::path::PathBuf, anyhow[31cb6a6de38747ae]::Error>>::unwrap
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5f19f1f7b8c5 - integration_tests[e14201d863eb1de]::integration::lifecycle::test_update_no_change_same_hash::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/integration/lifecycle.rs:130:6
[INFO] [stdout]   22:     0x5f19f1f6d9ee - <integration_tests[e14201d863eb1de]::integration::lifecycle::test_update_no_change_same_hash::{closure#0} as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x5f19f2841a1e - serial_test[7a9513f9deec4846]::serial_code_lock::local_serial_core
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.4.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]   24:     0x5f19f1f7f624 - integration_tests[e14201d863eb1de]::integration::lifecycle::test_update_no_change_same_hash
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/integration/lifecycle.rs:116:1
[INFO] [stdout]   25:     0x5f19f1f7b5f7 - integration_tests[e14201d863eb1de]::integration::lifecycle::test_update_no_change_same_hash::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/integration/lifecycle.rs:117:37
[INFO] [stdout]   26:     0x5f19f1f6d936 - <integration_tests[e14201d863eb1de]::integration::lifecycle::test_update_no_change_same_hash::{closure#0} as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5f19f27fd65b - <fn() -> core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String> as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x5f19f27fd65b - test[6ec0502068880816]::__rust_begin_short_backtrace::<core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>, fn() -> core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x5f19f280aed5 - test[6ec0502068880816]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x5f19f280aed5 - <core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<test[6ec0502068880816]::run_test_in_process::{closure#0}> as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x5f19f280aed5 - std[929523f510218772]::panicking::catch_unwind::do_call::<core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<test[6ec0502068880816]::run_test_in_process::{closure#0}>, core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   32:     0x5f19f280aed5 - std[929523f510218772]::panicking::catch_unwind::<core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>, core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<test[6ec0502068880816]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x5f19f280aed5 - std[929523f510218772]::panic::catch_unwind::<core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<test[6ec0502068880816]::run_test_in_process::{closure#0}>, core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x5f19f280aed5 - test[6ec0502068880816]::run_test_in_process
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x5f19f280aed5 - test[6ec0502068880816]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x5f19f2805a34 - test[6ec0502068880816]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x5f19f2805a34 - std[929523f510218772]::sys::backtrace::__rust_begin_short_backtrace::<test[6ec0502068880816]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x5f19f280df52 - std[929523f510218772]::thread::lifecycle::spawn_unchecked::<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x5f19f280df52 - <core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x5f19f280df52 - std[929523f510218772]::panicking::catch_unwind::do_call::<core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   41:     0x5f19f280df52 - std[929523f510218772]::panicking::catch_unwind::<(), core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x5f19f280df52 - std[929523f510218772]::panic::catch_unwind::<core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x5f19f280df52 - std[929523f510218772]::thread::lifecycle::spawn_unchecked::<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x5f19f280df52 - <std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1} as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x5f19f28afbef - <alloc[95e62e727ddf147d]::boxed::Box<dyn core[28b146924c2f19c6]::ops::function::FnOnce<(), Output = ()> + core[28b146924c2f19c6]::marker::Send> as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/alloc/src/boxed.rs:2277:9
[INFO] [stdout]   46:     0x5f19f28afbef - <std[929523f510218772]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   47:     0x75202524eaa4 - <unknown>
[INFO] [stdout]   48:     0x7520252dba64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- integration::lifecycle::test_full_lifecycle_add_list_update_remove stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'integration::lifecycle::test_full_lifecycle_add_list_update_remove' (251) panicked at tests/integration/lifecycle.rs:19:6:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: 创建目录失败: /opt/rustwide/workdir/.agents/skills/
[INFO] [stdout] 
[INFO] [stdout] Caused by:
[INFO] [stdout]     Read-only file system (os error 30)
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: <std::io::error::Error as anyhow::context::ext::StdError>::ext_context::<alloc::string::String>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/backtrace.rs:10:14
[INFO] [stdout]    1: <core::result::Result<(), std::io::error::Error> as anyhow::Context<(), std::io::error::Error>>::with_context::<alloc::string::String, skills::utils::fs::ensure_dir::{closure#0}>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/context.rs:65:37
[INFO] [stdout]    2: skills::utils::fs::ensure_dir
[INFO] [stdout]              at ./src/utils/fs.rs:159:14
[INFO] [stdout]    3: <skills::services::skill::SkillService>::install_skill_with_provider
[INFO] [stdout]              at ./src/services/skill.rs:317:9
[INFO] [stdout]    4: <skills::services::skill::SkillService>::install_skill
[INFO] [stdout]              at ./src/services/skill.rs:289:9
[INFO] [stdout]    5: integration_tests::integration::lifecycle::test_full_lifecycle_add_list_update_remove::{closure#0}
[INFO] [stdout]              at ./tests/integration/lifecycle.rs:12:5
[INFO] [stdout]    6: <integration_tests::integration::lifecycle::test_full_lifecycle_add_list_update_remove::{closure#0} as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]    7: serial_test::serial_code_lock::local_serial_core
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.4.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]    8: integration_tests::integration::lifecycle::test_full_lifecycle_add_list_update_remove
[INFO] [stdout]              at ./tests/integration/lifecycle.rs:5:1
[INFO] [stdout]    9: integration_tests::integration::lifecycle::test_full_lifecycle_add_list_update_remove::{closure#0}
[INFO] [stdout]              at ./tests/integration/lifecycle.rs:6:48
[INFO] [stdout]   10: <integration_tests::integration::lifecycle::test_full_lifecycle_add_list_update_remove::{closure#0} as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   11: <fn() -> core::result::Result<(), alloc::string::String> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   12: test::__rust_begin_short_backtrace::<core::result::Result<(), alloc::string::String>, fn() -> core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:724:18
[INFO] [stdout]   13: test::run_test_in_process::{closure#0}
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:747:74
[INFO] [stdout]   14: <core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   15: std::panicking::catch_unwind::do_call::<core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>, core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   16: std::panicking::catch_unwind::<core::result::Result<(), alloc::string::String>, core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   17: std::panic::catch_unwind::<core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>, core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panic.rs:359:14
[INFO] [stdout]   18: test::run_test_in_process
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:747:27
[INFO] [stdout]   19: test::run_test::{closure#0}
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:668:43
[INFO] [stdout]   20: test::run_test::{closure#1}
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:698:41
[INFO] [stdout]   21: std::sys::backtrace::__rust_begin_short_backtrace::<test::run_test::{closure#1}, ()>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   22: std::thread::lifecycle::spawn_unchecked::<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   23: <core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   24: std::panicking::catch_unwind::do_call::<core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   25: std::panicking::catch_unwind::<(), core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   26: std::panic::catch_unwind::<core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panic.rs:359:14
[INFO] [stdout]   27: std::thread::lifecycle::spawn_unchecked::<test::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   28: <std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   29: <alloc::boxed::Box<dyn core::ops::function::FnOnce<(), Output = ()> + core::marker::Send> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/alloc/src/boxed.rs:2277:9
[INFO] [stdout]   30: <std::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   31: <unknown>
[INFO] [stdout]   32: clone
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5f19f28b0888 - std[929523f510218772]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5f19f28b0888 - std[929523f510218772]::backtrace_rs::backtrace::trace_unsynchronized::<std[929523f510218772]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5f19f28b0888 - std[929523f510218772]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5f19f28b0888 - <<std[929523f510218772]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[28b146924c2f19c6]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5f19f28c922a - <core[28b146924c2f19c6]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5f19f28c922a - core[28b146924c2f19c6]::fmt::write
[INFO] [stdout]    6:     0x5f19f28b5c12 - std[929523f510218772]::io::default_write_fmt::<alloc[95e62e727ddf147d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/io/mod.rs:622:11
[INFO] [stdout]    7:     0x5f19f28b5c12 - <alloc[95e62e727ddf147d]::vec::Vec<u8> as std[929523f510218772]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/io/mod.rs:1977:13
[INFO] [stdout]    8:     0x5f19f288b976 - <std[929523f510218772]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5f19f288b976 - std[929523f510218772]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5f19f28a6aa9 - std[929523f510218772]::panicking::default_hook
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5f19f280a57c - <alloc[95e62e727ddf147d]::boxed::Box<dyn for<'a, 'b> core[28b146924c2f19c6]::ops::function::Fn<(&'a std[929523f510218772]::panic::PanicHookInfo<'b>,), Output = ()> + core[28b146924c2f19c6]::marker::Sync + core[28b146924c2f19c6]::marker::Send> as core[28b146924c2f19c6]::ops::function::Fn<(&std[929523f510218772]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/alloc/src/boxed.rs:2291:9
[INFO] [stdout]   12:     0x5f19f280a57c - test[6ec0502068880816]::test_main_inner::<test[6ec0502068880816]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x5f19f28a6d22 - <alloc[95e62e727ddf147d]::boxed::Box<dyn for<'a, 'b> core[28b146924c2f19c6]::ops::function::Fn<(&'a std[929523f510218772]::panic::PanicHookInfo<'b>,), Output = ()> + core[28b146924c2f19c6]::marker::Sync + core[28b146924c2f19c6]::marker::Send> as core[28b146924c2f19c6]::ops::function::Fn<(&std[929523f510218772]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/alloc/src/boxed.rs:2291:9
[INFO] [stdout]   14:     0x5f19f28a6d22 - std[929523f510218772]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5f19f288ba32 - std[929523f510218772]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5f19f28801b9 - std[929523f510218772]::sys::backtrace::__rust_end_short_backtrace::<std[929523f510218772]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5f19f288caed - __rustc[acf6043c977865fb]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5f19f28c9a9c - core[28b146924c2f19c6]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5f19f28c97e2 - core[28b146924c2f19c6]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/result.rs:1872:5
[INFO] [stdout]   20:     0x5f19f1f7ce03 - <core[28b146924c2f19c6]::result::Result<std[929523f510218772]::path::PathBuf, anyhow[31cb6a6de38747ae]::Error>>::unwrap
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5f19f1f7ce03 - integration_tests[e14201d863eb1de]::integration::lifecycle::test_full_lifecycle_add_list_update_remove::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/integration/lifecycle.rs:19:6
[INFO] [stdout]   22:     0x5f19f1f6da4e - <integration_tests[e14201d863eb1de]::integration::lifecycle::test_full_lifecycle_add_list_update_remove::{closure#0} as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x5f19f2841a1e - serial_test[7a9513f9deec4846]::serial_code_lock::local_serial_core
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.4.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]   24:     0x5f19f1f7f864 - integration_tests[e14201d863eb1de]::integration::lifecycle::test_full_lifecycle_add_list_update_remove
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/integration/lifecycle.rs:5:1
[INFO] [stdout]   25:     0x5f19f1f7b657 - integration_tests[e14201d863eb1de]::integration::lifecycle::test_full_lifecycle_add_list_update_remove::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/integration/lifecycle.rs:6:48
[INFO] [stdout]   26:     0x5f19f1f6d9b6 - <integration_tests[e14201d863eb1de]::integration::lifecycle::test_full_lifecycle_add_list_update_remove::{closure#0} as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5f19f27fd65b - <fn() -> core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String> as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x5f19f27fd65b - test[6ec0502068880816]::__rust_begin_short_backtrace::<core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>, fn() -> core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x5f19f280aed5 - test[6ec0502068880816]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x5f19f280aed5 - <core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<test[6ec0502068880816]::run_test_in_process::{closure#0}> as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x5f19f280aed5 - std[929523f510218772]::panicking::catch_unwind::do_call::<core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<test[6ec0502068880816]::run_test_in_process::{closure#0}>, core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   32:     0x5f19f280aed5 - std[929523f510218772]::panicking::catch_unwind::<core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>, core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<test[6ec0502068880816]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x5f19f280aed5 - std[929523f510218772]::panic::catch_unwind::<core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<test[6ec0502068880816]::run_test_in_process::{closure#0}>, core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x5f19f280aed5 - test[6ec0502068880816]::run_test_in_process
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x5f19f280aed5 - test[6ec0502068880816]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x5f19f2805a34 - test[6ec0502068880816]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x5f19f2805a34 - std[929523f510218772]::sys::backtrace::__rust_begin_short_backtrace::<test[6ec0502068880816]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x5f19f280df52 - std[929523f510218772]::thread::lifecycle::spawn_unchecked::<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x5f19f280df52 - <core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x5f19f280df52 - std[929523f510218772]::panicking::catch_unwind::do_call::<core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   41:     0x5f19f280df52 - std[929523f510218772]::panicking::catch_unwind::<(), core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x5f19f280df52 - std[929523f510218772]::panic::catch_unwind::<core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x5f19f280df52 - std[929523f510218772]::thread::lifecycle::spawn_unchecked::<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x5f19f280df52 - <std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1} as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x5f19f28afbef - <alloc[95e62e727ddf147d]::boxed::Box<dyn core[28b146924c2f19c6]::ops::function::FnOnce<(), Output = ()> + core[28b146924c2f19c6]::marker::Send> as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/alloc/src/boxed.rs:2277:9
[INFO] [stdout]   46:     0x5f19f28afbef - <std[929523f510218772]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   47:     0x75202524eaa4 - <unknown>
[INFO] [stdout]   48:     0x7520252dba64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] ---- integration::sync::test_sync_installs_missing_skills stdout ----
[INFO] [stdout] 
[INFO] [stdout] thread 'integration::sync::test_sync_installs_missing_skills' (270) panicked at tests/integration/sync.rs:26:6:
[INFO] [stdout] called `Result::unwrap()` on an `Err` value: 创建目录失败: /opt/rustwide/workdir/.agents/skills/
[INFO] [stdout] 
[INFO] [stdout] Caused by:
[INFO] [stdout]     Read-only file system (os error 30)
[INFO] [stdout] 
[INFO] [stdout] Stack backtrace:
[INFO] [stdout]    0: <std::io::error::Error as anyhow::context::ext::StdError>::ext_context::<alloc::string::String>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/backtrace.rs:10:14
[INFO] [stdout]    1: <core::result::Result<(), std::io::error::Error> as anyhow::Context<(), std::io::error::Error>>::with_context::<alloc::string::String, skills::utils::fs::ensure_dir::{closure#0}>
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/anyhow-1.0.102/src/context.rs:65:37
[INFO] [stdout]    2: skills::utils::fs::ensure_dir
[INFO] [stdout]              at ./src/utils/fs.rs:159:14
[INFO] [stdout]    3: <skills::services::skill::SkillService>::install_skill_with_provider
[INFO] [stdout]              at ./src/services/skill.rs:317:9
[INFO] [stdout]    4: <skills::services::skill::SkillService>::install_skill
[INFO] [stdout]              at ./src/services/skill.rs:289:9
[INFO] [stdout]    5: integration_tests::integration::sync::test_sync_installs_missing_skills::{closure#0}
[INFO] [stdout]              at ./tests/integration/sync.rs:19:5
[INFO] [stdout]    6: <integration_tests::integration::sync::test_sync_installs_missing_skills::{closure#0} as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]    7: serial_test::serial_code_lock::local_serial_core
[INFO] [stdout]              at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.4.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]    8: integration_tests::integration::sync::test_sync_installs_missing_skills
[INFO] [stdout]              at ./tests/integration/sync.rs:5:1
[INFO] [stdout]    9: integration_tests::integration::sync::test_sync_installs_missing_skills::{closure#0}
[INFO] [stdout]              at ./tests/integration/sync.rs:6:39
[INFO] [stdout]   10: <integration_tests::integration::sync::test_sync_installs_missing_skills::{closure#0} as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   11: <fn() -> core::result::Result<(), alloc::string::String> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   12: test::__rust_begin_short_backtrace::<core::result::Result<(), alloc::string::String>, fn() -> core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:724:18
[INFO] [stdout]   13: test::run_test_in_process::{closure#0}
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:747:74
[INFO] [stdout]   14: <core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   15: std::panicking::catch_unwind::do_call::<core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>, core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   16: std::panicking::catch_unwind::<core::result::Result<(), alloc::string::String>, core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   17: std::panic::catch_unwind::<core::panic::unwind_safe::AssertUnwindSafe<test::run_test_in_process::{closure#0}>, core::result::Result<(), alloc::string::String>>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panic.rs:359:14
[INFO] [stdout]   18: test::run_test_in_process
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:747:27
[INFO] [stdout]   19: test::run_test::{closure#0}
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:668:43
[INFO] [stdout]   20: test::run_test::{closure#1}
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:698:41
[INFO] [stdout]   21: std::sys::backtrace::__rust_begin_short_backtrace::<test::run_test::{closure#1}, ()>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   22: std::thread::lifecycle::spawn_unchecked::<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   23: <core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   24: std::panicking::catch_unwind::do_call::<core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   25: std::panicking::catch_unwind::<(), core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   26: std::panic::catch_unwind::<core::panic::unwind_safe::AssertUnwindSafe<std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panic.rs:359:14
[INFO] [stdout]   27: std::thread::lifecycle::spawn_unchecked::<test::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   28: <std::thread::lifecycle::spawn_unchecked<test::run_test::{closure#1}, ()>::{closure#1} as core::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   29: <alloc::boxed::Box<dyn core::ops::function::FnOnce<(), Output = ()> + core::marker::Send> as core::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/alloc/src/boxed.rs:2277:9
[INFO] [stdout]   30: <std::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]              at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   31: <unknown>
[INFO] [stdout]   32: clone
[INFO] [stdout] stack backtrace:
[INFO] [stdout]    0:     0x5f19f28b0888 - std[929523f510218772]::backtrace_rs::backtrace::libunwind::trace
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/../../backtrace/src/backtrace/libunwind.rs:117:9
[INFO] [stdout]    1:     0x5f19f28b0888 - std[929523f510218772]::backtrace_rs::backtrace::trace_unsynchronized::<std[929523f510218772]::sys::backtrace::_print_fmt::{closure#1}>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/../../backtrace/src/backtrace/mod.rs:66:14
[INFO] [stdout]    2:     0x5f19f28b0888 - std[929523f510218772]::sys::backtrace::_print_fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:74:9
[INFO] [stdout]    3:     0x5f19f28b0888 - <<std[929523f510218772]::sys::backtrace::BacktraceLock>::print::DisplayBacktrace as core[28b146924c2f19c6]::fmt::Display>::fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:44:26
[INFO] [stdout]    4:     0x5f19f28c922a - <core[28b146924c2f19c6]::fmt::rt::Argument>::fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/fmt/rt.rs:152:76
[INFO] [stdout]    5:     0x5f19f28c922a - core[28b146924c2f19c6]::fmt::write
[INFO] [stdout]    6:     0x5f19f28b5c12 - std[929523f510218772]::io::default_write_fmt::<alloc[95e62e727ddf147d]::vec::Vec<u8>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/io/mod.rs:622:11
[INFO] [stdout]    7:     0x5f19f28b5c12 - <alloc[95e62e727ddf147d]::vec::Vec<u8> as std[929523f510218772]::io::Write>::write_fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/io/mod.rs:1977:13
[INFO] [stdout]    8:     0x5f19f288b976 - <std[929523f510218772]::sys::backtrace::BacktraceLock>::print
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:47:9
[INFO] [stdout]    9:     0x5f19f288b976 - std[929523f510218772]::panicking::default_hook::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:292:27
[INFO] [stdout]   10:     0x5f19f28a6aa9 - std[929523f510218772]::panicking::default_hook
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:316:9
[INFO] [stdout]   11:     0x5f19f280a57c - <alloc[95e62e727ddf147d]::boxed::Box<dyn for<'a, 'b> core[28b146924c2f19c6]::ops::function::Fn<(&'a std[929523f510218772]::panic::PanicHookInfo<'b>,), Output = ()> + core[28b146924c2f19c6]::marker::Sync + core[28b146924c2f19c6]::marker::Send> as core[28b146924c2f19c6]::ops::function::Fn<(&std[929523f510218772]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/alloc/src/boxed.rs:2291:9
[INFO] [stdout]   12:     0x5f19f280a57c - test[6ec0502068880816]::test_main_inner::<test[6ec0502068880816]::test_main_static::{closure#0}>::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:155:21
[INFO] [stdout]   13:     0x5f19f28a6d22 - <alloc[95e62e727ddf147d]::boxed::Box<dyn for<'a, 'b> core[28b146924c2f19c6]::ops::function::Fn<(&'a std[929523f510218772]::panic::PanicHookInfo<'b>,), Output = ()> + core[28b146924c2f19c6]::marker::Sync + core[28b146924c2f19c6]::marker::Send> as core[28b146924c2f19c6]::ops::function::Fn<(&std[929523f510218772]::panic::PanicHookInfo,)>>::call
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/alloc/src/boxed.rs:2291:9
[INFO] [stdout]   14:     0x5f19f28a6d22 - std[929523f510218772]::panicking::panic_with_hook
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:833:13
[INFO] [stdout]   15:     0x5f19f288ba32 - std[929523f510218772]::panicking::panic_handler::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:698:13
[INFO] [stdout]   16:     0x5f19f28801b9 - std[929523f510218772]::sys::backtrace::__rust_end_short_backtrace::<std[929523f510218772]::panicking::panic_handler::{closure#0}, !>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:182:18
[INFO] [stdout]   17:     0x5f19f288caed - __rustc[acf6043c977865fb]::rust_begin_unwind
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:689:5
[INFO] [stdout]   18:     0x5f19f28c9a9c - core[28b146924c2f19c6]::panicking::panic_fmt
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panicking.rs:80:14
[INFO] [stdout]   19:     0x5f19f28c97e2 - core[28b146924c2f19c6]::result::unwrap_failed
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/result.rs:1872:5
[INFO] [stdout]   20:     0x5f19f1f7b35b - <core[28b146924c2f19c6]::result::Result<std[929523f510218772]::path::PathBuf, anyhow[31cb6a6de38747ae]::Error>>::unwrap
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/result.rs:1233:23
[INFO] [stdout]   21:     0x5f19f1f7b35b - integration_tests[e14201d863eb1de]::integration::sync::test_sync_installs_missing_skills::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/integration/sync.rs:26:6
[INFO] [stdout]   22:     0x5f19f1f6d23e - <integration_tests[e14201d863eb1de]::integration::sync::test_sync_installs_missing_skills::{closure#0} as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   23:     0x5f19f2841a1e - serial_test[7a9513f9deec4846]::serial_code_lock::local_serial_core
[INFO] [stdout]                                at /opt/rustwide/cargo-home/registry/src/index.crates.io-1949cf8c6b5b557f/serial_test-3.4.0/src/serial_code_lock.rs:36:5
[INFO] [stdout]   24:     0x5f19f1f7f254 - integration_tests[e14201d863eb1de]::integration::sync::test_sync_installs_missing_skills
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/integration/sync.rs:5:1
[INFO] [stdout]   25:     0x5f19f1f7ad57 - integration_tests[e14201d863eb1de]::integration::sync::test_sync_installs_missing_skills::{closure#0}
[INFO] [stdout]                                at /opt/rustwide/workdir/tests/integration/sync.rs:6:39
[INFO] [stdout]   26:     0x5f19f1f6d1c6 - <integration_tests[e14201d863eb1de]::integration::sync::test_sync_installs_missing_skills::{closure#0} as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   27:     0x5f19f27fd65b - <fn() -> core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String> as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   28:     0x5f19f27fd65b - test[6ec0502068880816]::__rust_begin_short_backtrace::<core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>, fn() -> core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:724:18
[INFO] [stdout]   29:     0x5f19f280aed5 - test[6ec0502068880816]::run_test_in_process::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:747:74
[INFO] [stdout]   30:     0x5f19f280aed5 - <core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<test[6ec0502068880816]::run_test_in_process::{closure#0}> as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   31:     0x5f19f280aed5 - std[929523f510218772]::panicking::catch_unwind::do_call::<core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<test[6ec0502068880816]::run_test_in_process::{closure#0}>, core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   32:     0x5f19f280aed5 - std[929523f510218772]::panicking::catch_unwind::<core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>, core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<test[6ec0502068880816]::run_test_in_process::{closure#0}>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   33:     0x5f19f280aed5 - std[929523f510218772]::panic::catch_unwind::<core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<test[6ec0502068880816]::run_test_in_process::{closure#0}>, core[28b146924c2f19c6]::result::Result<(), alloc[95e62e727ddf147d]::string::String>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panic.rs:359:14
[INFO] [stdout]   34:     0x5f19f280aed5 - test[6ec0502068880816]::run_test_in_process
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:747:27
[INFO] [stdout]   35:     0x5f19f280aed5 - test[6ec0502068880816]::run_test::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:668:43
[INFO] [stdout]   36:     0x5f19f2805a34 - test[6ec0502068880816]::run_test::{closure#1}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/test/src/lib.rs:698:41
[INFO] [stdout]   37:     0x5f19f2805a34 - std[929523f510218772]::sys::backtrace::__rust_begin_short_backtrace::<test[6ec0502068880816]::run_test::{closure#1}, ()>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/backtrace.rs:166:18
[INFO] [stdout]   38:     0x5f19f280df52 - std[929523f510218772]::thread::lifecycle::spawn_unchecked::<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/thread/lifecycle.rs:70:13
[INFO] [stdout]   39:     0x5f19f280df52 - <core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}> as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/panic/unwind_safe.rs:275:9
[INFO] [stdout]   40:     0x5f19f280df52 - std[929523f510218772]::panicking::catch_unwind::do_call::<core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:581:40
[INFO] [stdout]   41:     0x5f19f280df52 - std[929523f510218772]::panicking::catch_unwind::<(), core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panicking.rs:544:19
[INFO] [stdout]   42:     0x5f19f280df52 - std[929523f510218772]::panic::catch_unwind::<core[28b146924c2f19c6]::panic::unwind_safe::AssertUnwindSafe<std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}::{closure#0}>, ()>
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/panic.rs:359:14
[INFO] [stdout]   43:     0x5f19f280df52 - std[929523f510218772]::thread::lifecycle::spawn_unchecked::<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/thread/lifecycle.rs:68:26
[INFO] [stdout]   44:     0x5f19f280df52 - <std[929523f510218772]::thread::lifecycle::spawn_unchecked<test[6ec0502068880816]::run_test::{closure#1}, ()>::{closure#1} as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once::{shim:vtable#0}
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/core/src/ops/function.rs:250:5
[INFO] [stdout]   45:     0x5f19f28afbef - <alloc[95e62e727ddf147d]::boxed::Box<dyn core[28b146924c2f19c6]::ops::function::FnOnce<(), Output = ()> + core[28b146924c2f19c6]::marker::Send> as core[28b146924c2f19c6]::ops::function::FnOnce<()>>::call_once
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/alloc/src/boxed.rs:2277:9
[INFO] [stdout]   46:     0x5f19f28afbef - <std[929523f510218772]::sys::thread::unix::Thread>::new::thread_start
[INFO] [stdout]                                at /rustc/cced03bfd61a304243a34504618ecec86c17063f/library/std/src/sys/thread/unix.rs:118:17
[INFO] [stdout]   47:     0x75202524eaa4 - <unknown>
[INFO] [stdout]   48:     0x7520252dba64 - clone
[INFO] [stdout]   49:                0x0 - <unknown>
[INFO] [stdout] 
[INFO] [stdout] 
[INFO] [stdout] failures:
[INFO] [stdout]     integration::lifecycle::test_add_multiple_skills_then_remove_one
[INFO] [stdout]     integration::lifecycle::test_full_lifecycle_add_list_update_remove
[INFO] [stdout]     integration::lifecycle::test_update_no_change_same_hash
[INFO] [stdout]     integration::sync::test_sync_installs_missing_skills
[INFO] [stdout] 
[INFO] [stdout] test result: FAILED. 49 passed; 4 failed; 0 ignored; 0 measured; 0 filtered out; finished in 0.13s
[INFO] [stdout] 
[INFO] [stderr] error: test failed, to rerun pass `--test integration_tests`
[INFO] running `Command { std: "docker" "inspect" "8a2ec57d45bdd2b1ca238c75e518402a9594deb7af3dd69263bd98a00afe8ec2", kill_on_drop: false }`
[INFO] running `Command { std: "docker" "rm" "-f" "8a2ec57d45bdd2b1ca238c75e518402a9594deb7af3dd69263bd98a00afe8ec2", kill_on_drop: false }`
[INFO] [stdout] 8a2ec57d45bdd2b1ca238c75e518402a9594deb7af3dd69263bd98a00afe8ec2
